xdict_a = {
    'a3': 3333,
    'a4': 4444,
    'a5': 5555,
}

xdict_b = {
    'a1': 1111,
    'a2': 2222,
    **xdict_a,
    'a6': 6666,
    'a7': 7777,
}

print(xdict_b)


def my_func(name, **kwargs):
    print(name, ':', kwargs)


my_func('test', a6=6666, **xdict_a)


class Base():

    def __init__(self, a='a_default', b='b_default'):
        self.a = a
        self.b = b

    def __str__(self):
        return f'a = {self.a}, b = {self.b}'


class MyClass(Base):

    def __init__(self, c='c_default', **kwargs):
        # super(MyClass, self).__init__()
        super().__init__(**kwargs)
        self.c = c

    def __str__(self):
        return super().__str__() + f', c = {self.c}'


obj = MyClass(a='aaa', c='ccc')
print(obj)
